:root {
  --gap-xl: 36px;
  --gap-lg: 28px;
  --gap-md: 20px;
  --gap-base: 12px;
  --gap-sm: 4px;

  --text-xl: 30px;
  --text-lg: 24px;
  --text-md: 18px;
  --text-base: 14px;
  --text-sm: 10px;

  --sm: 640px;
  --md: 768px;
  --lg: 1024px;
  --xl: 1280px;
}

html.light {
  --background: #ffffff;
  --foreground: #000000;
  --border-color: #f0f0f0;
  --color-gray: #6b7380;
}

html.dark {
  --background: #18181b;
  --foreground: #ffffff;
  --border-color: #27272a;
}

#app {
  height: 100%;
}

.flex {
  display: flex;
}

.flex-1 {
  flex: 1;
}

.w-full {
  width: 100%;
}

.h-full {
  height: 100%;
}

.no-select {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.line-clamp-1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.placeholder {
  font-size: var(--text-base);
  color: var(--color-gray);
}
